home *** CD-ROM | disk | FTP | other *** search
/ SGI Developer Toolbox 6.1 / SGI Developer Toolbox 6.1 - Disc 4.iso / hardware / summa / docs / Summa.txt < prev   
Encoding:
Text File  |  1994-08-02  |  11.0 KB  |  334 lines

  1.         Summagraphics Tablets On SGI Platforms
  2.                            Running IRIX 5.x
  3.  
  4. Supported Tablets:
  5. ******************
  6.  
  7.     MM 961    6" by 9" Tablet
  8.  
  9.     Note: although support for the MM1201 tablet is coded into 
  10.         the driver, the functionality could not be verified, 
  11.         so it is not considered to be supported.
  12.  
  13. Output formats supported:
  14. *************************
  15.  
  16.     MM Packed Binary
  17.  
  18. Commands Supported:
  19. *******************
  20.  
  21.     Feature            IRIX Implementation
  22.  
  23.                 Control word    Value
  24.                 ------------    -------
  25.  
  26. Tablet Selection        model        "961"
  27.  
  28. Coordinate System
  29.     Absolute        coordinate    "absolute"
  30.     Relative        coordinate    "relative"
  31.  
  32. Origin Location
  33.     Upper Left        origin        "upper"
  34.     Lower Left        origin        "lower"
  35.  
  36. Report Modes
  37.     Point            reporting    "point"
  38.     Remote Request
  39.         command        reporting    "remote-mode"
  40.         trigger*    reporting    "remote-trig"
  41.     Stream            reporting    "stream"
  42.     Switch Stream        reporting    "switch"
  43.  
  44. Axis Update            axis_update    "value"    
  45.                         (where "value" is 0 to 90)
  46.  
  47. Increment            increment    "value"    
  48.                         (where "value" is 0 to 90)
  49.  
  50. Report Rate
  51.     Maximum            rate        "max"
  52.     Maximum/2        rate        "max/2"
  53.     Maximum/8        rate        "max/8"
  54.     Maximum/32        rate        "max/32"
  55.  
  56.  
  57. Resolution
  58.     Preset Resolutions
  59.     1 Line Per Inch        resolution    "1lpi"
  60.     2 Lines Per Inch    resolution    "2lpi"
  61.     4 Lines Per Inch    resolution    "4lpi"
  62.  
  63.     100 Lines Per Inch    resolution    "100lpi"
  64.     200 Lines Per Inch    resolution    "200lpi"
  65.     400 Lines Per Inch    resolution    "400lpi"
  66.     500 Lines Per Inch    resolution    "500lpi"
  67.     1000 Lines Per Inch    resolution    "1000lpi"
  68.  
  69. Number of Buttons
  70.     2 Buttons (i.e. stylus)    buttons        "2"
  71.     4 Buttons        buttons        "4"
  72.     5 Buttons        buttons        "5"
  73.  
  74. Scaling (done in X Windows system)
  75.                 scale        "valuex/valuey"
  76.  
  77. Tablet Number
  78.     Tablet 0        tablet        "0"
  79.     Tablet 1        tablet        "1"
  80.  
  81. Tablet Control
  82.     Resume Transmission*    control        "xon"
  83.     Stop Transmission*    control        "xoff"
  84.     Reset Tablet*        control        "reset"
  85.  
  86. Origin Offset
  87.     Offset origin in 
  88.      positive X direction    offsetx        "value"    (in tablet increments)
  89.     Offset origin in 
  90.      positive Y direction    offsety        "value"    (in tablet increments)
  91.  
  92.     * Feature not suggested for inclusion in config file
  93.  
  94.  
  95. Commands/Features Not Supported:
  96. ********************************
  97.  
  98.     Variable Resolutions
  99.     Note: code for this function is included in the driver, 
  100.         but problems with the tablet prevented this feature 
  101.         from working correctly, therefore it is not supported.
  102.     Selftest    
  103.     Test Results
  104.     Echo
  105.     Code Check
  106.  
  107.  
  108.  
  109. Using the IRIX Control Strings to Configure the Summagraphics Tablet
  110. ********************************************************************
  111.  
  112. There are three ways that the commands can be used to configure the tablet.
  113.  
  114. o    Control commands placed in the file "tablet" in the 
  115.     /usr/lib/X11/input/config directory
  116.  
  117. o    Commands given directly by means of a program like "devctrl"
  118.  
  119. o    From an application using the same approach as "devctrl"
  120.     Note: source for the devctrl command is found in /usr/people
  121.     /4Dgifts/examples/device/input/X
  122.  
  123. In each of these situations it is important that the control word and 
  124. the value are separated by a tab or at least one space character. The 
  125. IRIX operating system is case sensitive, so care needs to be taken to 
  126. duplicate the control and value strings exactly. No case conversion is 
  127. done in the driver. All values must be put in quotes as shown on the 
  128. list of commands.
  129.  
  130. Most commands can be put in the X11/input/config/tablet file since the 
  131. configuration of the tablet rarely changes once it is set up. However, 
  132. some commands do not make sense to include in the config file. These 
  133. commands are:
  134.  
  135. o    Remote report mode trigger
  136.  
  137. o    Stop Transmission (xoff)
  138.  
  139. o    Resume Transmission (xon)
  140.  
  141. o    Reset Tablet
  142.  
  143. These commands would typically be used from an application to trigger 
  144. a tablet report, start or stop tablet reports, or reset the tablet.
  145.  
  146.  
  147. An Example Configuration File for the Summagraphics Tablet
  148. **********************************************************
  149.  
  150. Unless otherwise specified the tablet assumes the default configuration 
  151. (see following section). These default settings can be altered by placing 
  152. configuration commands in a configuration file. The following is an 
  153. example of a configuration file that would set up the Summagraphics 
  154. tablet for use on a Silicon Graphics workstation. The configuration 
  155. shown would allow the tablet puck (or stylus) to be used as a pointing 
  156. device. The mouse would still be operative as the pointer as well. This 
  157. configuration file would be named tablet, and would be placed in the 
  158. /usr/lib/X11/input/config directory.
  159.  
  160. x_init {
  161.     pushpointer    "on"        * make the tablet the pointing device 
  162.     autostart    "on"        * start up the tablet device automatically
  163.     origin        "upper"        * set the origin to the upper left corner
  164.     reporting    "switch"    * set the reporting mode to "switch"
  165.     resolution    "200lpi"    * set resolution to 200 lines per inch
  166. }
  167.  
  168. Another example of a configuration file would be for use with the 5080 
  169. emulation program. A configuration file for this particular use is shown 
  170. below:
  171.  
  172. x_init {
  173.     pushpointer    "on"        * make the tablet the pointing device 
  174.     autostart    "on"        * start up the tablet device automatically
  175.     scalewhich    "none"        * X scaling functions
  176.     scalex        "1280/6000" *           .
  177.     scaley        "1024/4800" *          .
  178.     scale0        "1280/6000" *          .
  179.     scale1        "1024/4800" *          .
  180.     offsety        "2500"        * offset the origin 2.5 inches up
  181. }
  182.  
  183.  
  184. Default Tablet Settings
  185. ***********************
  186.  
  187. The following are the default device settings for the Summagraphics 
  188. tablet. These are set in the device driver but can be overridden by 
  189. inserting an alternate setting in the tablet configuration file as 
  190. shown above.
  191.  
  192.     Parameter        Default
  193.     -------------        ----------
  194.     Origin            Lower Left
  195.     Resolution        1000 lines per inch
  196.     Reporting Mode        Stream
  197.     Reporting Rate        Maximum
  198.     Tablet Model        961
  199.     Number of Buttons    5
  200.     Coordinate System    Absolute
  201.  
  202.  
  203. Configuring the Silicon Graphics Workstation for the Summagraphics Tablet
  204. *************************************************************************
  205.  
  206. The following are the steps required to configure the SGI workstation 
  207. to use the Summagraphics tablet. All the following operations must be 
  208. done as root.
  209.  
  210. 1.    Copy the object file, summa.o, into the /var/sysgen/boot directory.
  211.  
  212. 2.    Edit the file /var/sysgen/system/gfx.sm. Find the line that contains 
  213.     the entry for "dial" (USE: dial sball tablet) and append the 
  214.     word "summa" to the end of the list.
  215.  
  216. 3.    Copy the file summa.master into the /var/sysgen/master.d 
  217.     directory and name it summa.
  218.  
  219. 4.    Link the serial port that will be used for the tablet to the 
  220.     summa input device:
  221.         To use the tablet on serial port 1:
  222.             ln /dev/ttyd1 /dev/input/summa
  223.         To use the tablet on serial port 2:
  224.             ln /dev/ttyd2 /dev/input/summa
  225.  
  226. 5.    Create a configuration file. The /usr/lib/X11/input/config 
  227.     directory may, or may not, exist. If it does not exist, create 
  228.     the directory:
  229.             mkdir /usr/lib/X11/input/config
  230.     Use an editor to create a custom config file in the form shown 
  231.     previously, or you can copy over the file summa_input_config into
  232.     the input/config directory. The name of this config file should 
  233.     be tablet.
  234.  
  235. 6.    Create a new kernel that includes the tablet driver.
  236.             autoconfig
  237.  
  238. 7.    Reboot to use the new kernel:
  239.             reboot
  240.  
  241. Notes to Anyone Who Needs to Look at the Driver Source Code
  242.  
  243. o    As noted previously, there are a number of features that are 
  244.     not supported but have code in the driver for their support. 
  245.     For example, the MM 1201 is not supported, but code for it 
  246.     exists in the driver. Code for sending the diagnostic commands 
  247.     (self test, send test results, codecheck and echo) to the 
  248.     tablet are in the driver, but a mechanism for an application 
  249.     to get access to this data has not been implemented.
  250.  
  251. o    There are a lot of lines of code that can help in debugging 
  252.     the driver or tablet in the form of messages printed to the 
  253.     console window. In normal operation (i.e. as shipped) these 
  254.     messages do not appear. To activate these messages, edit the 
  255.     summa.c file and change the value of the define variable 
  256.     DBGLEVEL. It is normally set to 0. Setting it to 1, 2, 3, or 
  257.     4 will progressively enable more and more debugging messages. 
  258.     Recompile the driver and put it in /usr/sysgen/boot and use it.
  259.  
  260. o    Two programs are very useful in testing or debugging the driver 
  261.     or tablet. They are xlist and devctrl. Both of these programs 
  262.     can be found in the 4Dgifts area of the disk. Specifically, 
  263.     they will be found in:
  264.         /usr/people/4Dgifts/examples/devices/input/X
  265.     Compile these programs and use them for debugging and testing.
  266.  
  267. o    One undocumented feature is the ability to read back the 
  268.     configuration of the tablet. If DBGLEVEL is set to 2 or greater, 
  269.     the x and y resolution will be printed out on the console window. 
  270.     To use this feature, recompile the driver with the new value of 
  271.     DBGLEVEL and after rebooting, give the command:
  272.         devctrl tablet diag "get_config"
  273.  
  274. o    It is difficult to convince the X window system to send a null 
  275.     to a device. The Summagraphics tablet uses a null to reset the 
  276.     tablet. So, rather than figure out some fancy way to send a null 
  277.     without crashing the system, the tablet is reset to its default 
  278.     condition (as defined in the technical manual) by sending the 
  279.     appropriate set of commands.
  280.  
  281. o    Support for variable resolution is included in the driver, but 
  282.     for some reason did not work with the tablet we had. The 
  283.     resolution can be defined in either lines per inch or in pixels. 
  284.     The syntax for using the command (with the devctrl program) is:
  285.         devctrl tablet resolution "valuex/valuey" 
  286.     for pixel value resolutions, and:
  287.         devctrl tablet resolution "valuex|valuey"
  288.     for resolution in lines per inch. In all the tests done, this 
  289.     command did not change the resolution of the tablet.
  290.  
  291.  
  292. Listing of Files
  293. ****************
  294.  
  295. The following is a listing of the files included on the Summagraphics 
  296. Tablet Driver directory.
  297.  
  298.     README.streams      the readme file describing streams modules
  299.               in IRIX 5.x. This is the same as the file found
  300.               in the 4Dgifts/examples/input/devices directory.
  301.  
  302.     docs          [directory]
  303.     docs/Summa.ps      this file in postscript format
  304.     docs/Summa.txt      this file in ascii text format
  305.  
  306.     io          [directory]
  307.     io/Makefile      the make file for summa
  308.     io/idev.c      source for the idev interface
  309.     io/idev.o      object file for the idev interface
  310.     io/summa.c      source for the summagraphics driver
  311.     io/summa.o      the summagraphics tablet driver
  312.  
  313.     summa.master      the file that will go in /usr/sysgen/master.d
  314.     summa_input_cfg   an example input/config file
  315.  
  316.     sys          [directory]
  317.     sys/idev.h      the header file for the idev interface
  318.     sys/shmiq.h      the header file for the shared memory input queue
  319.     sys/summa.h      the header file for the summagraphics driver
  320.  
  321.     test          [directory]
  322.     test/Makefile      the make file for inputtest
  323.     test/README      an info file for inputtest
  324.     test/idev.c      source file for idev interface (linked to the file
  325.               in the io directory)
  326.     test/idev.o      object file for the idev interface
  327.     test/inputtest      the inputtest program
  328.     test/inputtest.c  source code for inputtest
  329.     test/inputtest.h  header file for inputtest
  330.     test/inputtest.o  object file for the inputtest program
  331.     test/summa.c      source file for the summagraphics driver (linked to
  332.               the file in the io directory)
  333.     test/summa.o      object file for the summagraphics driver
  334.